package q532_findPairs;

import java.util.*;

public class Solution_1 {
    /*
    hash表的经典用法 只不过多了一个set去重 这里我们只需要记录数对的一端即可去重
     */
    public int findPairs(int[] nums, int k) {
        Arrays.sort(nums);
        Map<Integer, Integer> map = new HashMap<>();
        Set<Integer> set = new HashSet<>();
        int count = 0;
        for (int i = 0; i < nums.length; i++) {
            if (map.containsKey(nums[i])) set.add(nums[i]);
            map.put(nums[i] + k, map.getOrDefault(nums[i] + k, 0) + 1);
        }

        return set.size();
    }

    public static void main(String[] args) {
        Solution_1 s = new Solution_1();
        int[] a = {1,2,4,4,3,3,0,9,2,3};
        int k = 3;
        s.findPairs(a, 3);
    }
}
